const UserService = require('../../services/admin/UserService')
const JWT = require("../../util/JWT")
console.log('你好jwt-UserController.js',JWT)

//来自routea/admin内
const UserController = {
	//req请求-前端给后端传来的数据；res返回-后端给前端返回的数据
	//登陆的接口
	login: async(req, res) =>{
		console.log('前端输入的账号密码传给后端了吗通了吗-UserController.js', req.body)
		//req.body 前端传来的数据-验证 提取出来写到services/
		var result = await UserService.login(req.body)
		//看下传给后端了吗？
		console.log('后端-前端登陆post到后端了吗-UserController.js', result)
		console.log('后端-前端登陆post到后端的长度-UserController.js', result.length)
		//判断传来值的情况
		if(result.length === 0){
			res.send({
				code: "-1",
				error: "用户名密码不匹配"
			})
		} else{
			//前端登陆成功后，后端在这里生成token(放入用户信息) 设置到header内传给前端 前端在login.vue内存去吧
			// console.log('后端-提取出来用户名了吗', result[0].username)
			const token = JWT.generate({
				_id: result[0]._id,
				username: result[0].username
			}, "1d")//1天过期
			res.header("Authorization", token)
			res.send({
				ActionType: "OK(login was successful)",
				//登陆成功后返回给前端的信息
				data:{
					username: result[0].username,
					gender:result[0].gender?result[0].gender:0,//性别0保密
					introduction: result[0].introduction,//简介
					avatar: result[0].avatar,//头像
					role: result[0].role,//角色
				}
			})
		}
	},
	//个人中心/center.vue页面中更新个人信息的接口
	upload: async(req, res) =>{
		console.log('更新个人信息前端传来的数据-UserController.js', req.body, req.file)
		// const {username,introduction,gender}=req.body
		// //调用service模块 更新数据
		// //取出token值
		const token = req.headers["authorization"].split(" ")[1]
		// const avatar = `/avatarploads/${req.file.filename}`
		var payload = JWT.verify(token)
		console.log("后端拦截-取出token了吗的用户id了吗-UserController.js",payload)

		// await UserService.upload({
		// 	_id: payload._id,
		// 	username,introduction,
		// 	gender:Numher(gender),
		// 	avatar
		// })
		// res.send({
		// 	ActionType:"OK"
		// })
	}
}

module.exports = UserController